/*
 * Project: jcerticles
 * Copyright(c) 2011 jcerticles
 * All rights reserved.
 *
 * $Revision $, last modified $Date $ by $Author $
 */
package com.quintilis31.home.persistence.type.impl.sql.jpa.jpaimpl;

import com.quintilis31.home.core.content.repository.IContentDAO;
import com.quintilis31.home.core.content.repository.impl.ContentDAOImpl;
import com.quintilis31.home.core.expenses.repository.IExpenseDAO;
import com.quintilis31.home.core.expenses.repository.impl.ExpenseDAOImpl;
import com.quintilis31.home.core.user.repository.IUserDetailsDAO;
import com.quintilis31.home.core.user.repository.impl.UserDetailsDAOImpl;

/**
 * TODO... Write Javadoc...
 * @author Jothi
 * @since 1.6
 */
public final class PersistenceFactory {

	/* To prevent instantiation from outside */
    private PersistenceFactory() {
    }

    /**
     * 
     * @return
     */
    public static IExpenseDAO getExpenseDAO() {
        return new ExpenseDAOImpl();
    }
    
    /**
     * 
     * @return
     */
    public static IUserDetailsDAO getUserDetailsDAO() {
    	return new UserDetailsDAOImpl();
    }
    
    /**
     * 
     * @param obj
     * @return
     */
    @SuppressWarnings({ "rawtypes", "unchecked" })
	public static IContentDAO getContentDAO(Class clazz) {
    	return new ContentDAOImpl(clazz);    	
    }
}